要啟用gitHub actions前,得先瞭解他的workflow是怎麼組成的
workflow格式: .yml檔
gitHub點選actions頁籤,有各種服務類型可以參考
點擊任一服務後的範例格式,該yaml檔須放在workflow資料夾內
相關範例&說明:
name: Deploy Jupyter Notebook # 工作流程的名稱,將顯示在 GitHub 上的工作流程列表中
on:
push: # 定義何時觸發這個工作流程
branches:
- main # 當主分支(或其他指定的分支)有推送事件時觸發這個工作流程
jobs:
deploy: # 工作流程中的工作(job)名稱,這裡只有一個工作
runs-on: ubuntu-latest # 指定工作運行在最新的 Ubuntu 環境上
steps: # 工作中的步驟
- name: Checkout code # 步驟1:檢出代碼,這是一個預定義的操作
uses: actions/checkout@v2
- name: Deploy Notebook # 步驟2:部署筆記本,這是一個 shell 指令步驟
run: |
# 在這裡添加你的部署腳本
# 例如,你可以使用 nbconvert 將 .ipynb 轉換為 HTML 或 PDF 格式
# 示例:jupyter nbconvert --to html notebook.ipynb
working-directory: ./path/to/notebook/folder # 此步驟的工作目錄
# 如果需要,可以添加額外的步驟
關於觸發工作流程的yml語法可以參考官方文件
而在此次專案中需要用到的是on schedule事件搭配crontab語法來設定時間
因此工作流程須改為
on:
schedule:
- cron: '0 0 * * 7' # 每週日的午夜(UTC時間)
關於crontab語法如何設置,可以參考鳥哥的資料來理解
要特別注意的是*號代表any,也就是說如果你設定五個星號,會變成無時無刻都在跑哦XD
剩下的關於如何部署已存在倉庫的.ipynb檔,留待明天說明囉~